package vista;


import javax.swing.table.AbstractTableModel;

import modelo.DetalleOrden;
import modelo.Producto;

import java.util.ArrayList;
import java.util.List;

public class VentanaTablaOrdenProducto extends AbstractTableModel {

        private static String[] titulos = {"Codigo Producto", "Descripcion", "Precio (Bs.F)", "Cantidad Solicitada"};
        private List<Producto> product = new ArrayList<Producto>();
        
        public VentanaTablaOrdenProducto (List<Producto> productos) {
                super();
                this.product = productos;
                this.fireTableDataChanged();
        }
        
        //lo llena con la cantidad de productos que tiene la base de datos
        @Override
        public int getRowCount() {
                // TODO Auto-generated method stub
                return product.size();
        }
    
        //Coloca la cantidad de columnas por titulos
        @Override
        public int getColumnCount() {
                return titulos.length;
        }

        @Override
        public Object getValueAt(int rowIndex, int columnIndex) {
                {
                        Producto productoOrden = product.get(rowIndex);
                
                switch (columnIndex) {
                case 0: return productoOrden.getCodProducto();
                case 1: return productoOrden.getDescripcionProd();
                case 2: return productoOrden.getPrecio();
                case 3: return 99;
                }
                return null;
           }

        }
        @Override
        public String getColumnName(int column) {
                return titulos[column];
        }

        //para que la columna 4 de la cantidad solicitada por el cliente  sea editable y las demás no
        public boolean isCellEditable(int row, int column) {
                 if (column == 3)
        return true;
                 return false;
    }

}

